/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package ws;

import bean.PedidoCompra;
import bean.PedidoCompraVetor;
import java.util.Vector;
import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebService;
import javax.ejb.Stateless;
import persistencia.controller.PedidoController;

/**
 *
 * @author André
 */
@WebService(wsdlLocation = "META-INF/wsdl/PedidoCompraWSService.wsdl")
@Stateless()
public class PedidoCompraWS {

    /**
     * Operação de serviço web
     */
    @WebMethod(operationName = "createPedido")
    public boolean createPedido(@WebParam(name = "pedidos") Vector<PedidoCompra> pedidos) {

        PedidoController pc = PedidoController.getInstance();
        return pc.createPedido(pedidos);
    }

    /**
     * Operação de serviço web
     */
    @WebMethod(operationName = "readPedidoPorId")
    public PedidoCompra readPedidoPorId(@WebParam(name = "codigoPedido") Integer codigoPedido) {

        PedidoController pc = PedidoController.getInstance();
        PedidoCompra p = pc.readPedidoPorId(codigoPedido);

        if (p == null) {
            System.out.println("PedidoCompraWS.readPedidoPorId retornou NULL");
            return null;
        }

        System.out.println("PedidoCompra[PK]: " + p.getTcodigo_pk());

        return p;
    }

    /**
     * Operação de serviço web
     */
    @WebMethod(operationName = "deletePedido")
    public boolean deletePedido(@WebParam(name = "codigoPedido") Integer codigoPedido) {

        PedidoController pc = PedidoController.getInstance();
        return pc.deletePedido(codigoPedido);
    }

    /**
     * Operação de serviço web
     */
    @WebMethod(operationName = "readPedido")
    public PedidoCompraVetor readPedido(@WebParam(name = "data")
    String data, @WebParam(name = "nomeFornecedor")
    String nomeFornecedor) {

        PedidoController pc = PedidoController.getInstance();
        Vector<PedidoCompra> v = pc.readPedido(data, nomeFornecedor);

        if (v == null) {
            System.out.println("PedidoCompraWS.readPedido retornou NULL");
            return null;
        }
        for (PedidoCompra i : v) {
            System.out.println("PedidoCompra[PK]: " + i.getTcodigo_pk());
        }

        PedidoCompraVetor vetor = new PedidoCompraVetor();
        vetor.setLista(v);
        return vetor;
    }
}
